package com.ruoyix.novel.domain.bo;

import com.ruoyix.common.core.validate.AddGroup;
import com.ruoyix.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;

import com.ruoyix.common.core.domain.BaseEntity;

/**
 * 角色设定业务对象 novel_character
 *
 * @author ruoyi
 * @date 2025-06-05
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class NovelCharacterBo extends BaseEntity {

    /**
     *
     */
    @NotNull(message = "不能为空", groups = { EditGroup.class })
    private Long id;

    /**
     * 关联的小说项目ID
     */
    @NotNull(message = "关联的小说项目ID不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long projectId;

    /**
     * 角色名称
     */
    @NotBlank(message = "角色名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String name;

    /**
     * 性别
     */
    private String gender;

    /**
     * 年龄
     */
    private Long age;

    /**
     * 角色类型
     */
    private String roleType;

    /**
     * 性格描述
     */
    private String personality;

    /**
     * 背景故事
     */
    private String background;

    /**
     * 角色图像链接
     */
    private String imageUrl;

    /**
     * 备注
     */
    private String remark;



}
